package back.Java的四种引用强弱软虚;

import java.lang.ref.SoftReference;

public class SoftReferenceExample {
    // 在内存足够时，软引用指向的对象不会被回收；但当内存不足时，垃圾回收器会回收这些对象。
    public static void main(String[] args) {
        // 创建一个对象，并使用软引用引用它
        Object object = new Object();
        SoftReference<Object> softReference = new SoftReference<>(object);

        // 断开强引用
        object = null;

        // 尝试触发垃圾回收
        System.gc();

        // 获取软引用指向的对象
        Object retrievedObject = softReference.get();
        System.out.println(retrievedObject);
    }
}
